﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ModeloEntidades;
using AccesoDatos.DAO;

namespace LogicaControl
{
    public class Controlador_Localidades : Controlador
    {
        // Atributos de manejo de instancia (singleton)
        static Controlador_Localidades instance = null;
        //------------------------------------------------------------------------------------------
        private DAO_Localidades miDAO_Localidades = new DAO_Localidades();


        public List<Localidad> obtener()
        {        

            return miDAO_Localidades.obtener();
        }

        public Localidad obtenerGenerica()
        {
            var cualquier_Localidad = new Localidad();
            cualquier_Localidad.Id = 1000;
            cualquier_Localidad.nombre = "Cualquiera";

            return cualquier_Localidad;
        }

        public Localidad obtenerNinguna()
        {
            var ninguna_Localidad = new Localidad();
            ninguna_Localidad.Id = 2000;
            ninguna_Localidad.nombre = "Ninguna";

            return ninguna_Localidad;
        }

        public Localidad obtenerNueva()
        {
            var ninguna_Localidad = new Localidad();
            ninguna_Localidad.Id = 3000;
            ninguna_Localidad.nombre = "Nueva";

            return ninguna_Localidad;
        }


        public void actualizar()
        {
            miDAO_Localidades.actualizar();
        }

        public void guardar()
        {
            miDAO_Localidades.guardar();
        }
        //------------------------------------------------------------------------------------------
        public static Controlador_Localidades Instance
        {
            get
            {
                if (instance == null)
                {
                    lock (padlock)
                    {
                        if (instance == null)
                        {
                            instance = new Controlador_Localidades();
                        }
                    }
                }
                return instance;
            }
        }
    }
}
